(C) 1996 AROS - The Amiga Replacement OS


NAME
#include <proto/exec.h>
APTR CachePreDMA()
SYNOPSIS
APTR address
ULONG * length
ULONG flags

LOCATION
In SysBase at offset 127
FUNCTION
Do everything necessary to make CPU caches aware that a DMA will happen. Virtual memory systems will make it possible that your memory is not at one block and not at the address you thought. This function gives you all the information you need to split the DMA request up and to convert virtual to physical addresses.

INPUTS
address
Virtual address of memory affected by the DMA
length
Number of bytes affected
flags
DMA_Continue - This is a call to continue a request that was broken up.
DMA_ReadFromRAM
Indicate that the DMA goes from RAM to the device. Set this bit in both calls.
RESULT
The physical address in memory. *length contains the number of contiguous bytes in physical memory.

NOTES
DMA must follow a call to CachePreDMA() and must be followed by a call to CachePostDMA().

EXAMPLE
BUGS
SEE ALSO
CachePostDMA()
INTERNALS
This function should be replaced by a function in $(KERNEL).

HISTORY
05.08.1997 iaint
Kernel Changes - These are mostly functions which are normally implemented by the kernel, but might not be.